package com.tedu.api.io;

import org.junit.Test;

import java.io.File;
import java.io.FileFilter;

/**
 * 作业1:listFiles(FileFilter接口)，使用实现类方法
 *                                 使用匿名内部类方式
 *       创建1次对象，使用匿名内部类
 *       语法：  接口 接口引用=new 接口(){重写：accept};
 *
 * 作业2：删除demo下有abc以及bcd的文件
 *   提示:demo/abc/bcd
 *   查File构造器方法：从内部依次删除
 *   new File(parent,"路径");  ---API介绍
 *   构造器：第一个参数：指定父级路径---确定不变---建议：使用传两个参数方法
 *          第二个参数：指定子级路径
 */

/*public class HomeWork {
    @Test
    public void testDelete(){
        //demo/abc/bcd/demo.txt
        String parent="demo"+File.separator;
        //abc/bcd/demo.txt  第一个子集：删除 demo.txt
        String child1="abc"+File.separator+"bcd"+
                ""+File.separator+"demo.txt";
        String child2="abc"+File.separator+"bcd";
        String child3="abc";
        //创建4次File对象
        File file=new File(parent,child1);
        file.delete();
        File file2=new File(parent,child2); //删掉bcd文件夹
        file2.delete();
        File file3=new File(parent,child3);//删掉abc文件夹
        file3.delete();
        File file4=new File(parent);
        file4.delete();

    }

}*/

public class HomeWork{
    public static void main(String[] args) {
        File file=new File(".");
        FileFilter fileFilter=new FileFilter(){
            public boolean accept(File pathname) {
                String name=pathname.getName();
                System.out.println("获取的名字是："+name);
                return name.startsWith("s");
            }
        };
        File[] subs=file.listFiles();
        for(int i=0;i<subs.length;i++){
            System.out.println("过滤后的文件夹："+subs[i].getName());
        }
    }
}

